根据Django中的下拉选择查询和过滤数据库的最佳方法

您所在的位置:网站首页 django join查询 根据Django中的下拉选择查询和过滤数据库的最佳方法

根据Django中的下拉选择查询和过滤数据库的最佳方法

#根据Django中的下拉选择查询和过滤数据库的最佳方法| 来源: 网络整理| 查看: 265

我是Django的新手,正在努力弄清楚如何查询数据库,然后返回一个基于下拉选择的过滤列表。我已经尝试过使用表单,但我不确定这是否有必要,因为我不需要存储下拉数据-我只想用它来查询数据库并进行相应的过滤。因此,如果用户在“类型”下拉列表中选择" Dog“,我将查询Dog数据库,然后根据第二个下拉选择"age_group”对其进行过滤。因此,如果用户选择"dog“,然后选择"baby”,它将返回一个小狗列表。dog.model

class Dog(models.Model): name =models.CharField(max_length=200,validators=[MinLengthValidator(2, "Nickname must be greater than 1 character")]) breed_group = models.CharField(max_length=200, choices=BreedGroup.choices, null=False, blank=False, default='Not Enough Information') breeds = models.ForeignKey(DogBreed, on_delete=models.PROTECT) age = models.PositiveIntegerField() ageGroup = models.IntegerField(choices=AgeGroup.choices, null=False, blank=False, default=0) sex = models.IntegerField(choices=SEX, blank=False, null=False, default=0) tagLine = models.CharField(max_length=150) goodWithCats = models.BooleanField(blank=False, null=False, default='Not Enough Information') goodWithDogs = models.BooleanField(null=False, blank=False, default='Not Enough Information') goodWKids = models.BooleanField(null=False, blank=False, default='Not Enough Information') def __str__(self): return self.name

search.html

TYPE ALL TYPES # queries all CAT # queries class CAT DOG # queries class Dog OTHER # queries class Other AGE ANY AGE # returns all listings BABY # returns babies of selected type ADULT #'' adults '' SENIOR#'' seniors '' SEARCH


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3